package automat;

public class KontrolBilletautomat {
	public static void main(String[] args) {
		
		
		int retur, antalFejl = 0, beløb=30;
		
		Billetautomat automat1 = new Billetautomat();
		// Nuværende balnce
		retur = automat1.getBalance();
		System.out.println("Beløb på konto: "+retur);
		
		// Indsættelse af negativt beløb
		System.out.println("Indsættelse af -100 på konto");
		automat1.indsætPenge(-100);
		
		// Kontrol af balance efter indsættelse af et negativt beløb
		retur = automat1.getBalance();
		System.out.println("Beløb på konto: "+retur);
		if (retur < 0) {
			System.out.println("Der er indsat et negativt beløb!");
			antalFejl+=1;
		}
		
		System.out.println("------------------------------------");
		
		Billetautomat automat2 = new Billetautomat();
		// Balancen sættes til et negativt beløb
		automat2.indsætPenge(-100);
		retur = automat2.getBalance();
		System.out.println("Balancen er: "+retur);

		// Køb af billet
		automat2.udskrivBillet();

		// Kontrol af antal billetter solgt med en negativ balance
		automat2.montørLogin("1234");
		System.out.println("Antal billetter solgt: "+automat2.getAntalBilletterSolgt());
		retur = automat2.getAntalBilletterSolgt();
		if (retur > 0) {
			System.out.println("Der er købt en billet med en negativ balance!");
			antalFejl+=1;
		}
		
		System.out.println("------------------------------------");
		
		Billetautomat automat3 = new Billetautomat();
		// Nuværende billetpris
		System.out.println("Prisen på en billet er: "+automat3.getBilletpris());

		// Billetprisen sættes til 30kr uden at benytte et montørlogin
		System.out.println("Prisen på en billet sættes til 30kr. uden at benytte montørlogin.");
		automat3.setBilletpris(beløb);

		// Kontrol af om der er sket en ændring i billetprisen
		retur = automat3.getBilletpris();
		System.out.println("Prisen på en billet er nu: "+retur);
		if (retur == 30){
			System.out.println("Billetprisen er ændret uden brug af montørlogin!");
			antalFejl += 1;
		}
		
		System.out.println("------------------------------------");
		
		Billetautomat automat4 = new Billetautomat();
		// Balancen sættes til et negativt beløb
		automat4.indsætPenge(-100);
		System.out.println("Balancen er: "+automat4.getBalance());

		// Kontrol af om der kan returneres med en negativ balance
		retur = automat4.returpenge();
		if (retur < 0) {
			System.out.println("Der er returneret et negativt beløb!");
			antalFejl+=1;
		}
		
		System.out.println("------------------------------------");
		
		Billetautomat automat5 = new Billetautomat();
		// Nuværende billetpris
		retur = automat5.getBilletpris();
		System.out.println("Billetprisen er: "+retur);

		// Billetprisen forsøges at sættes til et negativt beløb
		automat5.setBilletpris(-10);

		// Kontrol af om billetprisen er sat til et negativt beløb
		retur = automat5.getBilletpris();
		System.out.println("Billetprisen er: "+retur);
		if (retur <= 0) {
			System.out.println("Billetprisen er sat til et negativt beløb!");
			antalFejl+=1;
		}
		
		System.out.println("------------------------------------");
		
		System.out.println();
		System.out.println("Der blev fundet "+antalFejl+" fejl i automaten");
		if (antalFejl == 0) {
			System.out.println("Automaten er fejlfri, HURRA!!!");
		} else {
			System.out.println("Automaten har fejl, ØV!!!");			
		}
	}
}
